package com.lemon.soft.bookingroom.entity;

import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableLogic;
import com.baomidou.mybatisplus.annotation.TableName;

import java.math.BigDecimal;
import java.io.Serializable;
import java.time.LocalDateTime;
import java.util.Date;
import lombok.Data;

/**
 * 
 * 
 * @author ${author}
 * @email ${email}
 * @date 2025-05-29 12:38:52
 */
@Data
@TableName("cancellation_records")
public class CancellationRecordsEntity implements Serializable {
	private static final long serialVersionUID = 1L;

	/**
	 * 
	 */
	@TableId
	private Integer cancellationId;
	/**
	 * 预订ID，关联bookings表
	 */
	private Integer bookingId;
	/**
	 * 客户ID，关联users表
	 */
	private Integer userId;
	/**
	 * 取消时间
	 */
	private LocalDateTime cancelTime;
	/**
	 * 取消原因
	 */
	private String cancelReason;
	/**
	 * 退款金额
	 */
	private BigDecimal refundAmount;
	/**
	 * 处理员工ID，关联users表
	 */
	private Integer staffId;
	/**
	 * 审核状态：0-待审核，1-已通过，2-已拒绝
	 */

	private Integer reviewStatus;
	/**
	 * 审核时间
	 */
	private LocalDateTime reviewTime;
	/**
	 * 审核备注
	 */
	private String reviewRemark;
	/**
	 * 创建时间
	 */
	private LocalDateTime createTime;
	/**
	 * 更新时间
	 */
	private LocalDateTime updateTime;
	/**
	 * 逻辑删除标记：0-未删除，1-已删除
	 */
	@TableLogic
	private Integer isDelete;
	@TableField(exist = false)
	private MeetingRoomsEntity meetingRoom;

	@TableField(exist = false)
	private BookingsEntity booking;  // 预订信息
	@TableField(exist = false)
    private UsersEntity staff;                // 处理员工信息

}
